package com.demo.java.OD151_200.OD168;

import java.util.*;

/**
 * @author bug菌
 * @Source 公众号：猿圈奇妙屋
 * @des： 【简易压缩算法】问题
 * @url： https://blog.csdn.net/weixin_43970743/article/details/145780463
 */
public class OdMain {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String input = scanner.nextLine();  // 读取输入字符串
        StringBuilder output = new StringBuilder();  // 用来保存输出的结果
        int currentNumber = -1;  // 当前数字，用于处理字符后面的重复次数
        int length = input.length();

        for (int i = 0; i < length; i++) {
            char c = input.charAt(i);  // 获取当前字符

            // 判断当前字符是否为数字
            if (Character.isDigit(c)) {
                int digit = c - '0';  // 获取数字
                if (i == length - 1) {
                    // 如果最后一个字符是数字，输出error
                    output = new StringBuilder("!error");
                    break;
                } else if (currentNumber == -1) {
                    // 如果是第一次遇到数字
                    if (digit == 0 || (digit < 3 && digit > 0 && Character.isLowerCase(input.charAt(i + 1)))) {
                        output = new StringBuilder("!error");
                        break;
                    } else {
                        currentNumber = digit;
                    }
                } else {
                    // 拼接多位数的数字
                    currentNumber = currentNumber * 10 + digit;
                }
            } else if (Character.isLowerCase(c)) {
                // 如果是字母
                if (currentNumber >= 3) {
                    // 如果重复次数大于等于3
                    if (i != length - 1 && c == input.charAt(i + 1)) {
                        output = new StringBuilder("!error");
                        break;
                    }
                    // 按照次数重复字母
                    for (int j = 0; j < currentNumber; j++) {
                        output.append(c);
                    }
                    currentNumber = -1;  // 重置重复次数
                } else {
                    // 小写字母，不需要重复
                    if (i < length - 2 && c == input.charAt(i + 1) && c == input.charAt(i + 2)) {
                        output = new StringBuilder("!error");
                        break;
                    }
                    output.append(c);  // 直接添加字母
                }
            } else {
                // 如果遇到非法字符
                output = new StringBuilder("!error");
                break;
            }
        }
        System.out.println(output);  // 输出结果
    }
}